<!DOCTYPE html>
<html lang="zh-CN">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>图片文件上传的方法</title>
    <style>
      img {
        width: 200px;
        height: 200px;
      }
    </style>
  </head>
  <body>
    <input type="file" class="file" name="file" multiple />
    <img src="" alt="" />
    <script>
      document.querySelector('.file').addEventListener('change', function (e) {
        const files = this.files

        console.log(files)
        if (!files.length) {
          return
        }
        preview(files[0])
        // const form = new FormData()
        // form.append('xxxx', files[0])
        // 上传ajax
      })

      // 事先进行预览
      function preview(file) {
        let reader
        if (file) {
          // 创建流对象
          reader = new FileReader()
          reader.readAsDataURL(file) // 转化为base64
          const obj = URL.createObjectURL(file)
          console.log(obj)
          // document.querySelector('img').src = obj // img的src可以直接显示base64
        }
        //  转化完毕
        // reader.onload = function (e) {
        //   console.log(reader) // reader 的result存在base64的数据
        //   document.querySelector('img').src = reader.result // img的src可以直接显示base64
        // }
      }
    </script>
  </body>
</html>
